//
//  LDYUserAccountTools.swift
//  李东阳微博
//
//  Created by 李东阳 on 16/4/19.
//  Copyright © 2016年 李东阳. All rights reserved.
//

import UIKit

class LDYUserAccountTools: NSObject {

    //Mark --  单例
    static let userAccountTools: LDYUserAccountTools = LDYUserAccountTools()
    
    var userAccount:LDYUserAccount?
    
    
    var isLogin:Bool{
    
    
        if accessToken != nil{
        
        return true
        }else{
        
        return false
        }
    }
    
        //Mark -- 访问令牌
    var accessToken:String?{
    
        if userAccount?.access_token != nil{
        
            //Mark --  如果没有过去直接返回  过期 返回nil
            if isExpires == false {
            
            return userAccount?.access_token
            
            }else{
            
            return nil
            }

            
        
        }else{
            //Mark --   当我们第一次访问登录 获取的访问令牌 没有保存数据 我们应该返回一个nil
        
        return nil
        }
        
        
    }
    
    //Mark --  判断我们的访问令牌过期没
    var isExpires:Bool{
    
        let date = userAccount?.expires_date
        
        if date?.compare( NSDate()) == NSComparisonResult.OrderedDescending{
        
        
        return false
        }else{
        
        return true
        }
    
    }


    let path = ( NSSearchPathForDirectoriesInDomains(.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask , true).last! as NSString).stringByAppendingPathComponent("saveUserAccount")
    
    //Mark --   保存数据
    func saveUserAccount(account: LDYUserAccount){
    
        userAccount = account

        NSKeyedArchiver.archiveRootObject(account, toFile: path)
    
    }

    
  override  init() {
        super.init()
    
    userAccount = getUserAccount()
    
    }
    //Mark --  读取数据

    func getUserAccount() -> LDYUserAccount? {
    
    
     let result = NSKeyedUnarchiver.unarchiveObjectWithFile(path)
        
        return result as? LDYUserAccount
    }
    
}
